Программа для расчёта конструкций RFEM 6 является основой нашей модульной системы программного обеспечения. Основная программа RFEM 6 используется для задания конструкций, материалов и нагрузок плоских и пространственных конструктивных систем, состоящих из плит, стен, оболочек и стержней. Программа также позволяет создавать комбинированные конструкции, а также моделировать тела и контактные элементы.
RSTAB 9 - это мощная программа для расчёта и проектирования 3D конструкций балок, каркасов или ферм, которая которая помогает инженерам-строителям соответствовать современным требованиям и отражает последние тенденции в области строительного проектирования.
Вы часто тратите слишком много времени на расчёт сечений? Программное обеспечение Dlubal и автономная программа RSECTION облегчают вашу работу, определяя характеристики и выполняя расчёт напряжений для различных сечений.
Вы всегда знаете, откуда дует ветер? Конечно, со стороны инноваций! RWIND 2 - это программа, которая использует цифровую аэродинамическую трубу для численного моделирования потоков ветра. Программа моделирует эти потоки вокруг зданий любой геометрической формы и определяет ветровые нагрузки на поверхности.
Вам нужен обзор зон снеговой, ветровой и сейсмической нагрузок? Тогда вы находитесь по адресу. Используйте инструмент Geo-Zone Tool для быстрого и лёгкого определения снеговых нагрузок, скоростей ветра и данных по сейсмике в соответствии с ASCE 7‑16 и другими нормативами различных стран.
Хотите попробовать в работе функции программ Dlubal Software? У вас есть такая возможность! Бесплатная полная версия на 90 дней позволяет вам в полной мере попробовать в работе все наши программы.
В примере программы сначала создаётся консоль из IPE 200. К ней прилагается нагрузка на стержень 3,5 кН, и выполняется расчёт.
Доступ к этой таблице находится в строке 34:
Метод ResultTables.NodesDeformations () требует три аргумента. Во-первых, определите, какие типы результатов должны быть считаны. Это могут быть результаты по
ResultTables.NodesDeformations ()
sein.
Во-вторых, укажите номер загружения, сочетания нагрузок и т. д. Наконец, передайте номер узла в метод.
Возвращаемое значение d метода - это список, включенный в словарь. В строке 37 d отображается полностью. Строка 40 показывает, как получить доступ к определённому значению. [0] - это индекс списка, а [' displacement_z '] - это ключ словаря.
d
[0]
[' displacement_z ']
Трение - это тип нелинейности, который можно изменить только через интерфейс к шарниру стержня.
Для этого сначала необходимо создать шарнир стержня, если он еще не создан. Затем применим к шарниру стержня интерфейс IMemberHinge, а к нелинейности интерфейс IFriction. После того уже можно для изменения требуемых данных (в данном случае это запись Friction) использовать методы GetData и SetData:
Sub SetMemberHingeFriction() Dim model As RFEM5.model Set model = GetObject(, "RFEM5.Model") model.GetApplication.LockLicense On Error GoTo e Dim data As IModelData Set data = model.GetModelData Dim hinge(0 To 0) As RFEM5.MemberHinge hinge(0).No = 1 hinge(0).RotationalConstantX = 1 hinge(0).RotationalConstantY = 2 hinge(0).RotationalConstantZ = 3 hinge(0).TranslationalConstantX = 4 hinge(0).TranslationalConstantY = 5 hinge(0).TranslationalConstantZ = 6 hinge(0).Comment = "Member Hinge 1" hinge(0).TranslationalNonlinearityX = FrictionAType data.PrepareModification data.SetMemberHinges hinge data.FinishModification ' get interface for member hinge Dim imemhing As IMemberHinge Set imemhing = data.GetMemberHinge(1, AtNo) ' get interface for nonlinearity "friction" Dim iFric As IFriction Set iFric = imemhing.GetNonlinearity(AlongAxisX) ' get friction data Dim fric As Friction fric = iFric.GetData fric.Coefficient1 = 0.3 ' set friction data data.PrepareModification iFric.SetData fric data.FinishModification e: If Err.Number <> 0 Then MsgBox Err.Description, , Err.Source Set data = Nothing model.GetApplication.UnlockLicense Set model = NothingEnd Sub
В случае трения Vy + Vz, используется для настройки второго коэффициента команда Coefficient2. Постоянная пружины в диалоговом окне «Трение» затем определяется с помощью продольной пружины шарнира стержня. В данном конкретном случае это запись TranslationalConstantX , которая управляет настройками для направления x (см. Рисунок 01).
Деформации стержней можно считать, например, с помощью функции "GetMemberDeformations()". Однако эта функция ожидает указание номера, типа метода подсчета стержней (номер стержня/номер в списке) и то, какую систему координат следует использовать. Пользователь так может выбрать, будет ли использоваться местная система координат, система главных осей или общая система координат:
Sub test_results_member_axis()Dim iApp As RFEM5.ApplicationSet iApp = GetObject(, "RFEM5.Application")iApp.LockLicenseDim iMod As RFEM5.IModel3Set iMod = iApp.GetActiveModelOn Error GoTo e'get interface for calculationDim iCalc As RFEM5.ICalculation2Set iCalc = iMod.GetCalculation'get interface for resultsDim iRes As RFEM5.IResults2Set iRes = iCalc.GetResultsInFeNodes(LoadCaseType, 1)'get deformations in local coordinate systemDim memDefs_L() As RFEM5.MemberDeformationsmemDefs_L = iRes.GetMemberDeformations(1, AtNo, LocalMemberAxes)'get deformations in global coordinate systemDim memDefs_G() As RFEM5.MemberDeformationsmemDefs_G = iRes.GetMemberDeformations(1, AtNo, GlobalAxes)'get deformations in principal coordinate systemDim memDefs_P() As RFEM5.MemberDeformationsmemDefs_P = iRes.GetMemberDeformations(1, AtNo, LocalPrincipalAxes)e:If Err.Number <> 0 Then MsgBox Err.description, vbCritical, Err.SourceiMod.GetApplication.UnlockLicenseSet iMod = NothingEnd Sub
Эта небольшая программа способна считать местные деформации (memDefs_L) в осях стержня и главных осях (memDefs_P), а также общие деформации в осях стержня (memDefs_G).
Все элементы модуля STEEL EC3, которые можно изменить посредством интерфейса COM указаны в следующем коде:
// get interface to active modeliModel = iApp.GetActiveModel();// get interface to STEEL EC3 moduleIModule module = iModel.GetModule("STEEL_EC3") as Dlubal.STEEL_EC3.IModule;// get interface to module caseICase iStEC3case = module.moGetCase(1, Dlubal.STEEL_EC3.ITEM_AT.AT_NO);// get ultimate limit state options (Details > Ultimate Limit State)ULS_OPTIONS optsULS = iStEC3case.moGetULSOptions();// get options for stability design (Details > Stability)STABILITY_OPTIONS optsStab = iStEC3case.moGetStabilityOptions();// get options for serviceability design (Details > Serviceabiltiy)SERVICEABILITY_DEFORMATION_TYPE optsServDef = iStEC3case.moGetServiceabilityOptions();// get fire resistance options (Details > Fire Resistance)FIRE_RESISTANCE_OPTIONS optsFire = iStEC3case.moGetFireResistanceOptions();// get other options (Details > General)OTHER_OPTIONS optsOther = iStEC3case.moGetOtherOptions();//получить национальное приложение (например, DIN, CEN, ...)NATIONAL_ANNEX natAn = iStEC3case.moGetNationalAnnex();// get interface for national annex detailsINationalAnnex iNatAn = iStEC3case.moGetNationalAnnexOptions();// get base data for national annexNATIONAL_ANNEX_OPTIONS_BASE natAnBase = iNatAn.moGetBaseOptions();// get data for general method from national annexNATIONAL_ANNEX_OPTIONS_GM natAnGM = iNatAn.moGetGMOptions();// get data for lateral-torsional buckling from national annexNATIONAL_ANNEX_OPTIONS_LTB natAnLTB = iNatAn.moGetLTBOptions();// get data for stainless steel from national annexNATIONAL_ANNEX_OPTIONS_STEEL natAnSTEEL = iNatAn.moGetSteelOptions();
Все соответствующие элементы диалогового окна «Параметры» для данного дополнительного модуля затем показаны на Рисунке 02.